@charset "UTF-8";
@import url(https://fonts.googleapis.com/css?family=Open+Sans:400,300&subset=latin,cyrillic);
@import url("../css/characloud.css");
@font-face {
    font-family: "My Custom Font";
    src: url(fonts/Comic_CAT.otf) format("truetype");
}
@font-face {
    font-family: "Poppins";
    src: url(fonts/Poppins-ExtraBold.ttf) format("truetype");
}
* {
    box-sizing: border-box;
}

body {
    margin: 0;
    background-image: linear-gradient(rgba(19,21,44,0.60), rgba(19,21,44,0.60)), url(../backgrounds/tavern.png);
    font-family: "Source Sans Pro", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
    background-size: auto 100%;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: cover;
    /*backdrop-filter: blur(2px);*/
    scrollbar-width: thin;
    scrollbar-color: gray #191b31;
    color: rgb(229, 224, 216);
    -webkit-animation: bugfix infinite 1s;
    animation: bugfix infinite 1s;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: antialiased;
}
#chloe_star_dust_city {
    width: 80%;
    opacity:0.95; 
    display:block;
    border-radius:5px;
    margin-top:25px;
    margin-bottom:23px; 
    margin-left: 45px;
    margin-right: auto;
    cursor: pointer;
}
#chloe_star_dust_city:hover {
    opacity: 0.8;
}
#characloud_url {
    margin-right:10px;
    margin-top:0px;
    float:right; 
    height:25px;
    cursor: pointer;
    opacity: 0.99;
    display:inline-block;
}
#characloud_url img {
    width: 25px;
    height: auto;
    display:inline-block; 
    opacity:0.7;
}
#characloud_title {
    vertical-align: top;
    display:inline-block;
    color: rgb(206, 197, 182);
}
#version {
    color: rgba(229, 224, 216,0.8);
}
h1,
h2 {
    margin-bottom: 22px;
    color: #191919;
    font-weight: 300;
}

h1 {
    font-size: 32px;
    line-height: 32px;
}

h2 {
    color: #565d66;
    font-size: 26px;
    line-height: 26px;
}

a {
    color: #936f4a;/*#006b05;*/
    text-decoration: none;
}
a:hover {
    color: #998e6b;
}
#new_version_title {
    color: #326d78; 
    font-size: 15px;
}
.mes_text i {
    color: grey;
}
.mes_text em {
    color: grey;
}
.mes_text p {
    margin-top: 0px;
    margin-bottom: 16px;
}
.mes_text strong {
    font-weight: bold;
    color: grey;
}
.mes_text h2 {
    font-weight: bold;
    color: rgb(229, 224, 216);
}
.mes_text h1 {
    font-weight: bold;
    color: rgb(229, 224, 216);
}
/*
code {
  background-color: #a8a8a8;
  padding: 5px;
  font-family: Consolas, monospace;
  color: #333;
  white-space: pre-wrap;
  word-wrap: break-word;
}
*/
pre {
    background: #242535;
    /*background: #f4f4f4;*/
    border: 1px solid #ddd;
    border-left: 3px solid #f36d33;
    color: #a4a4a4;/*#666;*/
    page-break-inside: avoid;
    font-family: monospace;
    font-size: 15px;
    line-height: 1.6;
    margin-bottom: 1.6em;
    max-width: 100%;
    overflow: auto;
    padding: 1em 1.5em;
    display: block;
    word-wrap: break-word;
    white-space: pre-wrap;
    word-wrap: break-word;
}

#bg1{
    background-image: inherit;
    background-size: auto 100%;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: cover;
    /*filter: blur(2px);*/
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: -2;
}
#bg2{
    background: inherit;
    background-size: auto 100%;
    background-repeat: no-repeat;
    background-attachment: fixed;
    /*filter: blur(2px);*/
    background-size: cover;
    /*-webkit-backdrop-filter: blur(2px);*/
    /*backdrop-filter: blur(2px);*/
    opacity: 0.0;
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: -1;
}
#shell {
    display: grid;
    /*grid-template-rows: 40px auto 145px;*/
    grid-template-rows: 40px [chat] auto [inputform] minmax(145px, min-content);
    
    background: #191b3133;
    height: 100vh;
    overflow: auto;
    overflow-x: hidden;
    overflow-y: hidden;
    max-width:800px;
    margin-left: auto;
    margin-right: auto;
    
}
#chat_header {
    position: relative;
    background: #191b31;
    height: 100%;
    border-radius: 3px;
    border-style: solid;
    border-width: 0 0 0px;
    border-image: linear-gradient(to right, #ffffff05 0%, #ffffff05 1%, #ffffff05 99%, #ffffff05 100%) 0;
    display: flex;
    align-items: center;
    color: rgb(207, 201, 191);
    box-shadow: 0 0px 0px 100px rgba(0, 0, 0, 0.0);
}

#chat_header_content {
    display: grid;
    align-items: center;
    grid-template-columns: auto auto auto;
    /*grid-template-rows: auto auto;*/
}

#chat_header_back_button {
    margin-left: 20px;
    /*grid-row: span 2;*/
    cursor: pointer;
    display: flex;
    align-items: center;
}

#chat_header_back_button svg {
    height: 20px;
    width: 20px;
}

#chat_header_char_name {
    font-weight: 600;
    margin-left: 10px;
}

#chat_header_char_info {
    font-size: 12px;
    margin-left: 10px;
    color: gray;
}

.chat_header_char_info_user_name {
    cursor: pointer;
}

#chat {
    scrollbar-width: thin;
    overflow: hidden;
    overflow-y: scroll;
    background: #191b3100;
}


#form_shell {
    box-shadow: 0 0 2px rgba(200,200,200,0.1);
    white-space:nowrap;
    background: #191b31A0;
}
#send_form {
    display: grid;
    grid-template-columns: 35px auto 60px;
    /* background: green; */
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}
#send_textarea{
    --autoresize: true;
    /* width:100%;  */
    height: 89px;
    max-height: 50vh;
    resize: none;
    display:inline-block;
    background-color: #13152c;
    outline: none;
    border:0px solid grey;
    box-shadow: 0 0 2px rgba(200,200,200,0.5);
    padding: 10px;
    color: #e6e6e6;
    margin-left: 10px;
    margin-top: 10px;
}
#send_button_shell{
    /* display:inline-block; */
    /* height: 100%; */
    /* margin-left: 17px; */
    /* background: blue; */
    
}
#send_button{
    /* visibility: visible; */
    width: 100%;
    margin: 0 auto;
    margin-left: 4px;
    display: block;
    height: 100%;
    background: url('../img/send3.png') no-repeat top left;
    background-size: 26px auto;
    background-position: center center;
    outline:          none;
    border:           none;
    cursor:           pointer;
}
#loading_mes{
    display: none;
    width: 100%;
    height: 100%;
    margin: 0 auto;
    margin-left: 2px;
    /* visibility: collapse; */
    background: url('../img/load.svg') no-repeat top left;
    background-size: 45px 45px;
    background-position: center center;
}
#options_button{
    margin-top: 0px;
    cursor: pointer;
    /* opacity: 0.5; */
    position: block;
    width:40px;
    height: 40px;
    background-image: url('../img/options2.png');
    background-size: contain;
    background-repeat: no-repeat;
    
    /* background-size: 20px; */
}
#options{
    
    border-radius: 5px;
    opacity: 0.0;
    display: none;
    width: 200px;
    height: 100px;
    bottom: 196px;
    position: relative;
    /* background-color: blue; */
    z-index:1990;
   
}
.options-content {
    overflow: hidden;
    display: block;
    position: absolute;
    background-color: #191b31F3;
    min-width: 205px;
    z-index: 1;
     bottom: -6em;
}
#option_select_chat_logo {
    width: 21px;
    height: 21px;
    opacity: 0.5;
}
hr {
    height: 1px;
    border: 0;
    background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.60), rgba(0, 0, 0, 0));
    background-image: -moz-linear-gradient(left, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.60), rgba(0, 0, 0, 0));
    background-image: -ms-linear-gradient(left, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.60), rgba(0, 0, 0, 0));
    background-image: linear-gradient(left, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.60), rgba(0, 0, 0, 0));
}
.options-content hr {
  margin: 0px;
  padding: 0px;
  border-top: 1px solid #ffffff11;
}
.nav hr {
    margin: 22px 0;
    background-image: linear-gradient(90deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0));
}
.options-content a {
  color: #ffffff55;
  padding: 12px 16px;
  text-decoration: none;
  display: block;
}
.options-content img {
    width: 20px;
    height: 20px;
    opacity: 0.5;
    margin-right: 5px;
}

.options-content a:hover {
    background-color: #ffffff05;
}


.mes {
    display: grid;
    grid-template-columns: fit-content(60px) 60px auto 0px 0px;
    border-radius: 5px;
    box-shadow: 0 0 2px rgba(200,200,200,0.1);
    padding: 4px;
    background: #191b31CC;

    vertical-align: top;
    width: 100%;
    
    color: rgb(229, 224, 216);
    font-size: 18px;
    /* background: blue; */
    margin-bottom: 26px;
    position: relative;
    overflow: hidden;
    height: auto;
    
}
.mes .token_counter {
    position: absolute;
    bottom: 0.5ex;
    left: 1ex;
    width: 3em;
    height: 1.5em;
    line-height: 1.5em;
    vertical-align: middle;
    text-align: center;
    border-radius: 1.25ex;
    color: #191b31;
    background: #ccc;
    opacity: 0;
    z-index: 4;
    cursor: pointer;
}
.mes .token_counter:hover {
    opacity: 0.75;
}

.last_mes .mes_text {
    min-height: 80px;
}

.avatar {
    width: 65px;
    height: 103px;
    border-style: none;
    padding:6px;
    padding-bottom:20px;
}

.avatar img {

    transform: translateZ(0);
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    border-radius: 10px;
}

.character_select {
    padding: 0px;
    border-radius: 10px;
    cursor:pointer;
    display: grid;
    grid-template-columns: 67px auto;
}
.character_select:hover {
    background-color: #ffffff11;
}

.ch_name_menu {
    margin-left: 5px;
    margin-top: 6px;
    font-weight: bolder;
}

.mes_block {
    height: auto;
    padding-top: 4px;
    padding-left: 0px;
}
.ch_name {
    margin-left: 35px;
    grid-area: 1 / 1 / 2 / 4;
    /* background: green; */
    font-weight:bolder;
}
.name_select {
    display: none;
    grid-area: 1 / 1 / 2 / 4;
    margin: 0px;
    margin-left: 35px;
    padding: 0px;
    width: min-content;
    height: 1.25em;
    font-size: 100%;
    color: #ffffff9d;
    box-shadow: 0 0 2px rgba(200,200,200,0.0);
    background-color: #13152c55;
    border-bottom: 1px dashed rgba(255, 255, 255, 0.12);
}
.mes_text {
    /* background: olive; */
    position: relative; /* Add relative position */
    z-index: 2; /* Add a z-index */
    /*font-weight:lighter;*/
    padding-top: 3px;
    margin-bottom: 10px;
    margin-left: 35px;
    padding-right: 40px;
    max-width: 720px;
    word-wrap: break-word;
    animation: typing 3.5s steps(40, end), blink-caret .75s step-end infinite;
    
}
/*typing effect*/
.mes_text::after {
    content: "▋";
    animation: blink 1s steps(1) infinite;
    opacity: 0.7;
    display: none;
}

@keyframes blink {
    60% {
        visibility: hidden;
    }
}
/*Swipes*/
.swipe_right,.swipe_left {
    opacity: 0.18;
    display:none;
    height: 27px;
    width: 27px;
    cursor: pointer;
    position: absolute; /* Add absolute position */
    top: 50%; /* Vertically center */
    transform: translateY(-50%);
    z-index: 3; /* Add a z-index */
}
.swipe_right img,.swipe_left img {

    height: 27px;
    width: 27px;

}
.swipe_right {
    right: 10px;
}
.swipe_left {
    opacity: 0.16;
    left: 68px;
}
br {
   display: block;
   margin: 3px 0;
}
textarea,.text_pole {
    font-size: 11pt; /*font-size: 18px;*/
    background-color: #13152c;
    box-shadow: 0 0 2px rgba(200,200,200,0.5);
    border:0px solid grey;
    font-family: "Source Sans Pro", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
}
textarea {
    width:100%; 
    height: 400px;
    resize: none;
    display:block;
    outline: none;
    padding: 10px;
    color: #cacaca;
}
.text_pole {
    color: #ffffffaa;
    padding: 7px;
}
#form_create {
    margin-left: 10px;
}
.chareditor .text_pole{
    margin-bottom: 1ex;
}
.chareditor h4 {
    margin-top: 2ex;
}
#character_file_div {
    opacity: 0.8;
}
#description_div > textarea {
    height: 200px;
    margin-top: 0px;
}
#description_wppeditor{
    height: 200px;
    width: 92%;
    margin-top: 0px;
    border: 0px solid gray;
    box-shadow: 0 0 2px rgba(200,200,200,0.5);
    padding: 10px;
    background: #13152c;
}
#character_name_pole{
    width: 100%;
}
#firstmessage_textarea{
    height: 140px;
}
#room_select_more_chars_button {
	margin-left: auto;
	margin-right: auto;
	display: block;
	height: 3em;
	border: thin solid rgba(200,200,200,0.2);
	border-radius: 3px;
	background-color: #191b3133;
	padding: 1ex;
	cursor: pointer;
	font-weight: bold;
	font-size: 0.8em;
}

.right_menu{
    /* padding: 15px 20px; */
    max-height: 87%;
    overflow: hidden;
    overflow-y: auto;
    scrollbar-width: thin;
}
.right_menu h3 {
    margin: 0px;
    padding: 0px;
    margin-left: 10px;
    
}

.h5_menu_help {
    color: #757575;
    margin: 0px;
    padding: 0px;
    margin-bottom: 5px;
}

#proxy_set_context_size_button, #kobold_set_context_size_button, #webui_set_context_size_button, #claude_set_context_size_button {
    cursor: pointer;
    display: inline-block;
    font-weight: 600;
    opacity: 0.8;
}

.modular .h5_menu_help {
    margin-bottom: 0px;
}
#shadow_charedit_advanced_popup .cross {

    right: 15px;
    top: 15px;
    width: 20px;
    height: 20px;
    cursor: pointer;
    opacity: 0.6;
}

#shadow_charedit_advanced_popup .header {
    padding-left: 31px;
    padding-bottom: 0px;
}
#shadow_charedit_advanced_popup .content {
    padding: 20px;
    padding-top: 0px;
    padding-left: 31px;
    padding-right: 31px;
}

#shadow_charedit_advanced_popup .h4_menu_title {
    margin-top: 14px;
}

#shadow_charedit_advanced_popup  .h5_menu_help {
    margin-bottom: 5px;
}

.h4_menu_title {
    margin: 0px;
    padding: 0px;
    margin-bottom: 1px;
}
#title_your_avatar{
    margin-bottom: 6px;
    display: inline-block;
}
#your_avatar_add_button {
    cursor: pointer;
    display: inline-block;
}
input:focus, textarea:focus, select:focus{
    outline: none;
}

input::file-selector-button {
    font-weight: bold;
    color: #fff;
    padding: 0.5em;
    border: thin solid rgba(200,200,200,0.2);
    border-radius: 3px;
    background-color: #191b31;
    cursor: pointer;
}
input[type=submit], input[type=button] {
    font-weight: bold;
    color: #fff;
    padding: 0.5em;
    border: thin solid rgba(200,200,200,0.2);
    border-radius: 3px;
    background-color: #191b31;
    cursor: pointer;
}
#rm_button_selected_ch {
    display: none;
}
.right_menu_title_button {
    display:inline-block;
    /* box-shadow: 0 0 5px -1px rgba(0,0,0,0.2); */
    cursor:pointer;
    vertical-align:middle;
    text-align: center;
    padding-left: 4px;
    padding-right: 4px;
    margin-top:3px;
    
}
.right_menu_title_button:active {
    color:red;
    box-shadow: 0 0 5px -1px rgba(0,0,0,0.05);
    background-color: rgba(0,0,0,0.05);
}

.right_menu_title_button h2 {
    margin-bottom: 13px;
}

#rm_button_create {
    margin-top: 9px;
}

#rm_button_create h2 {
    font-size: 20px;
    color: rgba(188, 193, 200, 0.5);/*color: #bcc1c8;*/
    margin-bottom: 1ex;
}

#rm_button_create h2:hover {
    color: #bcc1c8;
}

#rm_button_back h2 {
    color: rgb(188, 193, 200, 0.5);
}
#rm_button_import, #character-button-new-folder {
    cursor: pointer;
    display: inline-block;
    margin-left: 0.5ex;
    margin-top: 1.25em;
    
}
#rm_button_import h2, #character-button-new-folder h2 {
    margin-top: auto;
    margin-bottom: auto;
    font-size: 17px;
    color: rgb(188, 193, 200, 0.5);
}

#rm_button_import h2:hover, #character-button-new-folder h2:hover {
    color: #bcc1c8;
}

.seleced_button_style {
    color: #bcc1c8;
}

.deselected_button_style {
    color: #565d66;
}

#rm_ch_create_block {
    display: none;
}

#api_url_text, api_url_text_webui, #api_key_novel, #api_key_openai, #horde_api_key {
    margin-right: 4px;
}

#api_button, #api_button_novel, api_button_openai {
    color:#ffffffaa;
    display: inline-block;
}

#api_loading, #api_loading_webui, #api_loading_novel, #api_loading_openai, #api_loading_claude{
    width: 25px;
    height: 25px;
    display: none;
    
}

#rm_characters_block {
    display: block;
    /* visibility: hidden; */
}
#avatar_url_div, #selected_chat_div, #create_date_div, #last_mes_div {/*hidden text fields*/
    display: none;
}
/*Left background menu*/
#bg_menu {
    margin-top: 5px;
    margin-left: 2px;
    cursor:pointer;
    position: absolute;
    z-index: 2050;
    -webkit-user-select: none; 
      -webkit-touch-callout: none; 
      -moz-user-select: none; 
      -ms-user-select: none; 
      user-select: none;  
    
}

#site_logo {
    opacity: 0.4;
    display: inline-block;
    width: 130px;
    height: 20px;
    vertical-align: top;
    margin-left: 1px;
}
#bg_menu_button {
    display: inline-block;
    opacity: 0.4;
     /* transition: 0.5s */
     cursor: pointer;
     width: 20px;
     /* background: #191b3188; */
     text-align: center;
     height: 20px;
     color: #ffffff88;
     
}
#bg_menu_button img {
     width: 20px;
     height: 20px;
     margin-bottom: 6px;
}
#bg_menu_content {
    margin-top: 0px;
    margin-left: 6px;
    opacity: 0.0;
    /* padding-top: 10px; */
    cursor:auto;
    display: block;
    width: 122px;/* 114px; */
    height: 0px;
    background: #191b3100;
    overflow: hidden;
    overflow-y: hidden;
    
    scrollbar-width: thin;
    scrollbar-color: #ffffff11 #191b3111;
}
::-webkit-scrollbar {
    width: .60em;
    /*background-color: blue;*/
}

::-webkit-scrollbar-track {
    background-color: #191b31;
}

::-webkit-scrollbar-thumb {
    background: gray;
    border-radius: 1px;
    box-shadow: inset 0.05em 0.05em 0 rgba(0, 0, 0, 0.1), inset 0 -0.05em 0 rgba(0, 0, 0, 0.07);
}

#bg_menu_content::-webkit-scrollbar-track {
    background-color: #191b3111;
}

#bg_menu_content::-webkit-scrollbar-thumb {
    background: #ffffff11;
    border-radius: 1px;
    box-shadow: inset 0.05em 0.05em 0 rgba(0, 0, 0, 0.1), inset 0 -0.05em 0 rgba(0, 0, 0, 0.07);
}
.bg_example {
    /* box-shadow: 0 0 2px rgba(200,200,200,0.5); */
    /* background: #13152c; */
    width: 103px;
    height: 83px;
    border-style: none;
    padding:6px;
    padding-bottom:20px;
    position: relative;
    margin-left: 3px;
}

.bg_example_img {
    cursor: pointer;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    border-radius: 10px;
}
.bg_example_cross {
    width:12px;
    height:12px;
    position: absolute;
    float: right;
    right: 10px;
    top: 10px;
    cursor: pointer;
    opacity: 0.4;
}
.bg_example_but_load {
    margin-left: 3px;
    /* box-shadow: 0 0 2px rgba(200,200,200,0.5); */
    /* background: #13152c; */
    width: 103px;
    height: 83px;
    border-style: none;
    padding:6px;
    padding-bottom:20px;
  
}

.bg_example_but_load img {
    cursor: pointer;
    width: 91px;
    height: 57px;
    object-fit: cover;
    object-position: center center;
    border-radius: 10px;
    opacity: 0.1;
}

#add_bg_button {
    margin-bottom: 2px;
}
#form_bg_download{
    margin-bottom: 2px;
}
.input-file {
    display: block;
}

.input-file input[type=file] {
    /* position: absolute; */
    z-index: -1;
    opacity: 0;
    display: block;
    width: 0;
    height: 0;
}

#style_menu {
    position: absolute; 
    left: 136px;
    margin-top: 4px;
}
.style_button {
    width: 18px; 
    height: 18px; 
    margin-bottom: 10px;
    cursor: pointer;
}
.style_button img {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    box-shadow: 0px 0px 4px #00000022;
    opacity: 0.7;
}
/*   */
.avatar_div {
    margin-top: 16px;
}
.avatar_div .avatar {
    margin-left: 4px;
    display: inline-block;
}

#add_avatar_button {
    vertical-align: top;
    display: inline-block;
    margin-top: 52px;
    max-width: 24em;
}
#description_div {
    margin-top: 6px;
    
}
#description_div > input {
    float: right;
}
#description_div > label {
    float: right;
}

#first_message_div {
    margin-top: 20px;
}
.chareditor {
    /*margin: 0 1em;*/
    width: 89%;

}
.chareditor-avatar-filename {
    opacity: 0.8;
    display: inline-block;
}

#character_advanced_button, #master_settings_button {
    margin-top: 20px;
    font-size: 14px;
    background-repeat: no-repeat;
    background-size: 28px;
    background-position: 92px 5px;
    /* background-image: url('img/book5.png'); */
    width: 92%;
    height: 40px;
    font-weight: bold;
    color: #ffffffbb;
    padding: 0.5em;
    border: thin solid rgba(200,200,200,0.2);
    border-radius: 3px;
    background-color: #191b3133;
    opacity: 1.0;
}
#character_advanced_button {
    width: 100%;
}

#character_online_editor {
    font-size: 14px;
    background-repeat: no-repeat;
    background-size: 28px;
    background-position: 92px 5px;
    /* background-image: url('img/book5.png'); */
    width: 143px;
    height: 48px;
    font-weight: bold;
    color: #ffffffbb;
    padding: 0.5em;
    border: thin solid rgba(200,200,200,0.2);
    border-radius: 3px;
    background-color: #191b3133;
    opacity: 1.0;
    margin-bottom: 8px;
}
#character_advanced_button {
    margin-bottom: 1em;
}

#character_online_editor {
    float: left;
}
.chareditor input[type=submit] {
    opacity: 0.8;
}
.chareditor input[type=submit][disabled=true] {
    opacity: 0.4;
    cursor: auto;
}
.chareditor.create input[type=submit] {
    display: block;
    width: 31%;
    padding: 5px;
    margin: 0;
    margin-bottom: 8px;
}
#character-button-import {
    cursor: pointer;
}

/*Pop-ups in the right drop-down menu when a character is created or imported*/
#rm_search_bar {
    margin-left: 0.5ex;
    margin-bottom: 22px;
    display: inline-block; 
    width: 74%; 
    margin-top: 6px;
}

#rm_charaters_block {
    position: relative;
}
#rm_info_block {
    display: none;
    width: 100%;
    height: 80%;
    justify-content: center;
    flex-direction: column;

}
#rm_info_panel {
    font-size: 20px;
    display: block;
    text-align: center;
}
#rm_info_button {
    width: 100px;
    margin-top: 10px;
    font-size: 20px;
    display: block;
    cursor: pointer;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
}
#rm_info_avatar {
    width: 69px;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
}

#export_button {
    opacity: 0.51;
    display: block;
    float:right;
    margin-top: 25px;
    margin-right: 16px; 
    color: #fff;/*#ffffff68;*/
}
#result_info { /*Print tokens count and another info*/
    margin-top: 4px;
    width: 100px;
    margin-left: 6px;
    size: 10px;
    color: #ffffff33;
}

/* WPP Editor */
.wpp-editor {
    white-space: nowrap;
    overflow: auto;
    height: 100%;
}
.wpp-editor .editor {
    height: 100%;
}

.wpp-editor .help {
    position: absolute;
    top: 0;
    right: 0;
    border: 1px solid #ccc;
    height: 1.25em;
    width: 1.25em;
    line-height: 1.05em;
    background: #191b31F5;
    vertical-align: middle;
    text-align: center;
    border-radius: 50%;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.wpp-editor input, .wpp-editor-field input {
    font-size: 0.92em;
    color: #ccc;
    background-color: transparent;
    width: 8em;
    height: 1.4em;
    margin-bottom: 2px;
    border: 1px solid #ccc;
}
.wpp-editor-field input {
    border-radius: 1ex;
}
.wpp-editor-field input {
    width: 100%;
    overflow-x: hidden;
    text-overflow: ellipsis;
}
.wpp-editor input:first-child, .wpp-editor-field input:first-child {
    text-align: center;
    border-radius: 0px;
    border-bottom-left-radius: 1ex;
    border-top-left-radius: 1ex;
    margin-right: 0px;
    color: #333;
    background-color: #fff;
    width: 8em;
}
.wpp-editor-field input:first-child {
    width: 30%;
}
.wpp-editor-field input:first-child.empty {
    background-color: darkred;
    opacity: 1;
    border-color: red;
}
.wpp-editor-field input:nth-child(2) {
    width: 70%;
    border-radius: 0px;
    border-bottom-right-radius: 1ex;
    border-top-right-radius: 1ex;
}
.wpp-editor-field input:nth-child(2).empty {
    opacity: 1;
    border-color: red;
}
.wpp-editor-field input.empty {
    opacity: 0.5;
}
.world_info_details .footer {
    display: flex;
    flex-wrap: wrap;
}
.world_info_details .footer label {
    flex-grow: 1;
    line-height: 2.25em;
    text-align: center;
}
.world_info .comment-label {
    display: inline;
    margin-right: 1ex;
    min-width: 4.5em;
}
.world_info_details .comment {
    display: inline-block;
    font-size: 0.92em;
    color: #ccc;
    background-color: transparent;
    height: 1.4em;
    overflow-x: hidden;
    text-overflow: ellipsis;
    margin-bottom: 2px;
    border: 1px solid #ccc;
    border-radius: 1ex;
    margin-top: 1ex;
    flex-grow: 3;
    min-width: calc(100%);
}
.world_info_details .comment.empty {
    opacity: 0.5;
}
.wpp-editor .props input:first-child {
    color: #333;
    background-color: #ccc;
}
.wpp-editor input:last-child {
    border-bottom-right-radius: 1ex;
    border-top-right-radius: 1ex;
}
.wpp-editor input.empty {
    opacity: 0.5;
}
.wpp-editor input:disabled {
    opacity: 0.25;
}

.wpp-editor .props > div { /* row */
    display: block;
}
.wpp-editor .alert {
    position: absolute;
    bottom: 0;
    height: 2.5em;
    width: 100%;
    color: #222;
    background-color: #791b31;
    text-align: center;
}

.wpp-editor .alert .text {
    position: absolute;
    left: 1em;
    bottom: 1ex;
    right: 1em;
    height: 1.5em;
}

.wpp-editor .alert .close {
    position: absolute;
    right: 0;
    bottom: 0;
    height: 1.25em;
    width: 1.25em;
    font-size: 2em;
    line-height: 1.25em;
    vertical-align: center;
    cursor: pointer;
}

.wpp-editor .alert.hidden {
    display: none;
}

.wpp-editor label {
    display: inline-block;
    color: #ddd;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border: 1px solid #ccc;
    height: 1.2em;
    width: 1.2em;
    line-height: 1.2em;
    vertical-align: middle;
    text-align: center;
    transform: translateY(-0.1em);
    border-radius: 0 1ex 1ex 0 ;
}
.wpp-editor .empty ~ label {
    opacity: 0.5;
    cursor: auto;
    pointer-events: none;
}
.wpp-editor label:hover {
    color: #fff;
}
.wpp-editor label input {
    display: none;
}
.wpp-editor input:checked + label  {
    transform: translateY(-0.1em) rotate(-90deg);
    border-radius: 0 0 1ex 1ex;
}
.wpp-editor input[type=checkbox] {
    display: none;
}
.wpp-editor input:checked + label + .props  {
    display: none;
}

/* Texts Input */
.room-scenario {
    max-height: 30em;
    height: auto;
    /* resize: block; */
    resize: none;
    width: 100%;
    display: block;
}


/* Buttons */
label.button.inline,
button.inline,
.chareditor button,
.chareditor input[type=submit] {
    height: 3em;
    border: thin solid rgba(200,200,200,0.2);
    border-radius: 3px;
    background-color: #191b3133;
    padding: 1ex;
    margin-left: 1ex;
    cursor: pointer;
    font-weight: bold;
    /*font-size: 1em*/
}
.chareditor button,
.chareditor input[type=submit] {
    opacity: 0.8;
}
.chareditor button:not[disabled=true]:hover,
.chareditor input[type=submit]:not[disabled=true]:hover {
    opacity: 1;
}
.chareditor button.chareditor-button-close {
    font-size: 2em;
    font-weight: bold;
    border: none;
    background: transparent;
    margin: 0;
    padding: 0;
    height: 55%;
}

.chareditor-button-delete {
    color: #c47373;
    margin-rght: 1em;
}
.chareditor-button-delete,
.chareditor-button-export {
    float: right;
}
chareditor-button-close {
    display: none;
}
.edit .chareditor-button-submit,
.edit .chareditor-name-block {
    display: none;
}
.create .chareditor-button-delete,
.create .chareditor-button-export {
    display: none;
}
.chareditor-token-counter {
    position: relative;

    text-align: center;
    /*float: right;*/
    min-width: 2em;
    opacity: 1.0;
    display: inline-block;
}
.chareditor-token-counter:after {
    margin-left: 1px;
    width: 100%;
    content: "Tokens";
    text-align: center;
}
.create .chareditor-button-online {
    display: none;
    
}
#characters_rooms_switch_button {
    width: 97%; 
    margin-left: 3px;
    font-weight: bold;
    color: #ffffff99;
    padding: 0.5em;
    border: thin solid rgba(200,200,200,0.2);
    border-radius: 3px;
    background-color: #191b31;
    cursor: pointer;
}

#characters_rooms_switch_button_rooms_text {
    opacity: 0.5;
}

#characters_rooms_switch_button_div {
	position: sticky;
	top: 0;
	z-index: 1;
}

.chareditor .chareditor-token-warning-count,
.chareditor .chareditor-token-warning-left {
    display: none;
    text-align: center;
    font-variant: small-caps;
}
.chareditor .error .chareditor-token-warning-count,
.chareditor .error .chareditor-token-warning-left {
    color: #b9052f;
}
.chareditor .warning .chareditor-token-warning-count,
.chareditor .warning .chareditor-token-warning-left {
    color: #d5a433;
}

label.button > img,
button > img {
    opacity: 0.75;
}
label.button:hover > img,
button:hover > img {
    opacity: 1;
}
label.button,
button {
    color: #bfbfbf;
}
label.button:hover,
button:hover {
    color: #fff;
}
label.button[disabled=disabled],
button[disabled=disabled] {
    cursor: not-allowed;
    pointer-events: none;
}
label.button.inline > img,
button.inline > img {
    width: 100%;
    height: 100%;
}
label.button[disabled=disabled] > img,
button[disabled=disabled] > img {
    opacity: 0.25;
}
label.button[disabled=disabled]:hover > img,
button[disabled=disabled]:hover > img {
    opacity: 0.25;
}
button.double {
    display: inline-block;
    padding: 0.5em;
    height: 2.8em;
    margin: 0 0 0 0.5ex;
    font-weight: bold;
}
label form {
    display: none;
}


/*Popups*/
.popup_large {
    display: none;
    max-width:800px;
    height: calc(100vh - 120px);
    position: absolute;
    z-index: 2065;
    background-color: blue;
    margin-left: auto;
    margin-right: auto;
    left: 0;
    right: 0;
    margin-top: 10px;
    box-shadow: 0 0 2px rgba(200,200,200,0.1);
    padding: 4px;
    background: #191b31F5;
    border-radius: 1px;
    overflow: hidden;
    
}
.popup_large_header {
    margin-left: 36px;
}

.popup_cross {
    position: absolute; 
    right: 15px; 
    top: 15px; 
    width: 20px; 
    height: 20px; 
    cursor: pointer; 
    opacity: 0.6
}
#select_chat_cross{
    top: 14px; 
}
#drag_drop_shadow {
    background-color: #00000066;
    opacity: 1.0;
    position: absolute;
    width: 100%;
    height: 100vh;
    z-index: 2595;
    display: none;
    align-items: center;
    justify-content: center;
}
#drag_drop_shadow img {
    opacity: 0.25;
    width: 200px;
    height: 200px;
}
.shadow_popup {
    background-color: #00000066;
    display: none;
    opacity: 1.0;
    position: absolute;
    width: 100%;
    height: 100vh;
    z-index: 2095;
}
#shadow_popup {
    opacity: 0.0;
    z-index: 2595;
}

#colab_shadow_popup {
    z-index: 2298;
    /*display: block;*/
}
#colab_popup_text {
    float: left;
    margin-left: 88px;
}
#shadow_select_chat_popup {
    z-index: 2059;
}
#colab_popup {
    text-align: center;
    margin-top: 36vh;
    box-shadow: 0 0 2px rgba(200,200,200,0.0);
    background: #191b3100;
    margin-left: auto;
    margin-right: auto;
    z-index: 2060;
    left: 0;
    right: 0;
    position: absolute;
    width:300px;
    height: 150px;
    padding: 4px;
}
.menu_button {
    font-weight: bold;
    color: #fff;
    padding: 0.5em;
    border: thin solid rgba(200,200,200,0.2);
    border-radius: 3px;
    background-color: #191b31;
    cursor: pointer;
}
#dialogue_popup{
    
    width:300px;
    min-height: 150px;
    position: absolute;
    z-index: 2060;
    background-color: blue;
    margin-left: auto;
    margin-right: auto;
    left: 0;
    right: 0;
    text-align: center;
    margin-top: 36vh;
    box-shadow: 0 0 2px rgba(200,200,200,0.1);
    padding: 10px;
    background: #191b31F6;
    border-radius: 10px;
}
#dialogue_popup_text {
    word-wrap: break-word;
    white-space: pre-wrap;
    vertical-align: middle;
    text-align: center;
    width: 100%;
    
    
}
#dialogue_popup_text .error {
    color: red;
    margin-bottom: 6px;
    margin-top: 6px;
    text-align: center;
}
#dialogue_popup_text .alert {
    vertical-align: middle;
    height: 100%;
    width:100%;
}

#dialogue_popup_text p {
    margin-bottom: 12px;
    text-align: center;
}
#dialogue_popup_ok {
    width: 67px;
    display: inline-block;
    margin-right: 0px;
    background-color: #791b31;
    margin-top: 10px;
}
#dialogue_popup_cancel {
    display: inline-block;
    margin-left: 40px;
    margin-top: 10px;
}
#dialogue_del_mes {
    width:300px;
    height: 150px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    padding: 4px;
}
#dialogue_del_mes_ok {
    display: inline-block;
    margin-right: 20px;
    background-color: #791b31;
}
#dialogue_del_mes_cancel {
    display: inline-block;
    margin-left: 20px;
}
#dialogue_del_mes .menu_button {
    font-weight: bold;
    font-size: 20px;
    min-width: 100px;
    min-height: 40px;
}

#online_status {
    opacity: 0.3;
    bottom: 0px;
    margin-left: 1ex;
    margin-top: 1ex;
    display: inline-block;
}
#online_status2, #online_status3, #online_status4, #online_status_webui, #online_status_claude {
    opacity: 0.5;
    margin-top: 2px;
    margin-bottom: 30px;
}
#online_status4 {
    margin-bottom: 26px;
}
#online_status_indicator, #online_status_indicator2, #online_status_indicator3 , #online_status_indicator4, #online_status_indicator_webui, #online_status_indicator_claude {
    border-radius: 7px;
    width: 14px;
    height: 14px;
    display: inline-block;
}
.online_status_indicator_offline {
    background-color: red;
}
.online_status_indicator_online {
    background-color: green;
}
#online_status_text, #online_status_text2, #online_status_text3, #online_status_text4, #online_status_text_webui, #online_status_text_claude {
    margin-left: 4px;
    display: inline-block;
}

/*   */
.del_checkbox{
    display: none;
    opacity: 0.5;
    accent-color: #ffffff;
    /* background-color: green; */
    width: 20px;
    height: 20px;
}
#dialogue_del_mes{
    display: none;
}
.for_checkbox{
    display: block;
}
select {
    color: #ffffff66;
    padding: 5px 10px;
    width:95%;
    height: 34px;
    margin-left: 3px;
    background-color: rgba(255, 255, 255, 0.09);
    font-size: 15px;
    border: 0;
    outline: 0;
    box-shadow: 0 0 2px rgba(200,200,200,0.5);
    margin-top: 5px;
    margin-bottom: 45px;
}
#title_api{
    margin-left: 3px;
}
#main_api {
    color:#fff;
    background-color:#13152c;
}
#kobold_api_logo {
    display:none; 
    position: absolute; 
    right:188px; 
    top:-34px; 
    opacity:0.20;
}
#kobold_api_logo img {
    width:40px;
    height:40px;
}
#novel_api_logo {
    position: absolute;
    right:152px;
    top:-25px;
    opacity:0.25;
}
#novel_api_logo img {
    width:auto;
    height:22px;
}
#openai_api_logo {
    position: absolute; 
    right:164px; 
    top:-33px; 
    opacity:0.25;
}
#openai_api_logo img {
    width:auto;
    height:26px;
}
#claude_api_logo {
    position: absolute; 
    right:120px; 
    top:-33px; 
    opacity:0.23;
}
#claude_api_logo img {
    width:auto;
    height:18px;
}
#kobold_api, #novel_api, #openai_api, #horde_api, #webui_api, #claude_api {
    position: relative;
    margin-left: 10px;
}

#additional_menu_settings {
    margin-left: 10px;
}
#additional_menu_settings hr {
    margin-bottom: 5px;
}
#user_avatar_block {
    margin-left: -3px;
    display: grid;
    grid-template-columns: auto auto auto;
}
#user_avatar_block .avatar {
    cursor: pointer;
    margin-bottom: 30px;
    width: 90px;
    height: 126px;
    position: relative;
}
#user_avatar_block .avatar .user_avatar_img {
    width: 90px;
    height: 126px;
}
.user_avatar_cross {
    height: 18px !important;
    width: 18px !important;
    position: absolute;
    float: right;
    right: -1px;
    top: 8px;
    cursor: pointer;
    opacity: 0.5;
    background-color: black;
    border-radius: 1px !important;
    padding: 1px;
}
.ch_select_cross {
	right: 7px;
	position: absolute;
	width: 50px !important;
	height: 50px !important;
	top: 20px;
	opacity: 0.3;
	display: none;
}
#room_character_selected_items .avatar:hover .ch_select_cross {
	display: block;
}
#room_character_selected_items .avatar:hover img:not(.ch_select_cross) {
	filter: brightness(50%);
}
#rm_api_block {
    display: none;
    padding-bottom: 5px;
}
#rm_api_block h4 {
    opacity: 0.85;
}
/*  */
#master_settings {
    height: calc(83vh - 65px); /* set the height to the remaining space */
    overflow-y: scroll; /* make the content scrollable */
    scrollbar-width: thin;
}

#master_settings_popup {
    overflow: hidden;

}
#master_settings_popup_content {
    margin-left: 36px;
    display: grid;
    grid-template-rows: 63px auto;

}
#master_settings_head {
    height: 63px; /* set a fixed height */
    position: sticky;
    top: 0;
    z-index: 1; /* make sure the header is on top of the scrollable content */
}
/******************************/
/*********Range style**********/
.range_bar{
    margin-bottom: 20px;
}
.range_title{
    margin-bottom: 0px;
    margin-top: 0px;
}
.range_counter{
    margin-bottom: 5px;
    color: #757575;
    margin-top: 0px;
}



input[type="range"] {
  -webkit-appearance: none;
  margin-right: 15px;
  width: 200px;
  height: 15px;
  background: rgba(69, 72, 87, 0.92);
  border-radius: 10px;
  /* background-image: linear-gradient(#ff4500, #ff4500); */
  background-size: 70% 100%;
  background-repeat: no-repeat;
}
input[type="range"]::-webkit-slider-thumb {
    appearance: none;
    height: 15px;
    width: 15px;
    border-radius: 50%;
    background-color: #fff;
}
input[type="range"]::-moz-range-thumb {
    appearance: none;
    height: 15px;
    width: 15px;
    border-radius: 50%;
    border:0px;
}
input[type="range"]::-ms-thumb {
  background-color: #fff;
}
.master_settings_range_block {
    display: grid;
    grid-template-columns: 33.3% 33.3% 33.3%;
    grid-template-rows: auto auto auto; 
    margin-bottom: 30px;
}


#max_context_label, #max_context_label{
    display: inline-block;
}

/******************************/
/******Toggle checkboxes********/
#master_settings_toggle_block {
    display: grid;
    grid-template-columns: 33.3% 33.3% 33.3%;
    grid-template-rows: auto auto auto;
    margin-bottom: 30px;
}

.toggle_checkbox[type="checkbox"] {
    -webkit-appearance: none;
    appearance: none;
    height: 30px;
    width: 54px;
    background-color: #34384b99;
    border-radius: 10px;
    cursor: pointer;
    outline: none;
    transition: 0.3s;
    display: inline-block;
}
.toggle_checkbox[type="checkbox"]:before {
    content: "";
    height: 24px;
    width: 24px;
    background-color: #d5d5d533;/*#d5d5d5;*/
    margin-top: 3px;
    margin-left: 6px;
    border-radius: 30%;
    display: inline-block;
    transition: 0.3s;
}
.toggle_checkbox[type="checkbox"]:after {
    content: "OFF";
    font-family: 'Poppins',sans-serif;
    color: #d5d5d5;
    font-size: 25px;
    position: absolute;
    margin-top: -16px;
    margin-left: 40px;
    transition: 0.3s;
    display: none;
}
.toggle_checkbox[type="checkbox"]:checked {
    background-color: #34384b;/*#496451;/*#434d39;/*#716b5a;/*#466977;#19d28f;*/
}
.toggle_checkbox[type="checkbox"]:checked:before {
    background-color: #d5d5d5;/*#1f212d;*/
    margin-left:25px;
}
.toggle_checkbox[type="checkbox"]:checked:after {
    content: "ON";
    margin-left: 8px;
    color: #19d28f;
    display: none;
}


/*lock toggle*/
.toggle_lock[type="checkbox"] {
    -webkit-appearance: none;
    appearance: none;
    height: 30px;
    width: 54px;
    background-color: #34384b99;
    border-radius: 10px;
    cursor: pointer;
    outline: none;
    transition: 0.3s;
    display: inline-block;


}
.toggle_lock[type="checkbox"]:before {
    content: "";

    display: block;
    transition: 0.3s;
    /*background-color: #5b9541;/*#19d28f;*/
    background-image: url(../img/padlock_unlock.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: 0 3px;
    width: 27px;
    height: 27px;
    margin-left: 2px;
}
.toggle_lock[type="checkbox"]:after {
    content: "";
    margin-top: 8px;
    margin-left: 6px;
    transition: 0.3s;

}
.toggle_lock[type="checkbox"]:checked {
    background-color: #34384b;/*#19d28f;*/
    margin-left: 24px;
    width: 34px;
}
.toggle_lock[type="checkbox"]:checked:before {

    margin-left:3px;
    background-image: url(../img/padlock.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 27px;
    height: 27px;
    
}
.toggle_lock[type="checkbox"]:checked:after {
    content: "";
    margin-left: 8px;
    color: #19d28f;
    
}

#max_context_grid, #max_context_grid_webui {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: 140px 55px;
}

/*    */


.menu_toggle {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: 140px 55px;
    margin-bottom: 0px;
}
.toggle_label {
    display: inline-block;
}

/****Mes edit****/
.mes_edit {
    display: block;
    cursor:pointer;
    margin-right: 4px;
    opacity:0.07;
    position: absolute;
    top: 1ex;
    right: 1ex;
}
.mes_edit img {
    width:20px;
    height:20px;
}
.edit_block {
    position: absolute;
    top: 1ex;
    right: 1ex;
    display: none;
    height: 2em;
    white-space: nowrap;
}
.edit_block div {
    display: inline;
    cursor:pointer;
    margin-left: .75ex;
    opacity:0.5;
}
.edit_block div img {
    width: 23px;
    height: 23px;
}
.edit_block div.disabled {
    pointer-events: none;
    opacity: 0.25;
}
.edit_textarea {
    word-wrap: break-word;
    font-weight: lighter;
    font-size: 18px;
    padding: 0px;
    margin: 0px;
    border: none;
    border-color: transparent;
    outline: none;
    box-shadow: none;
    background-color: transparent;
    max-width: auto;
}

/*   */


#your_name {
    outline: none;
    /* box-shadow: 0 2px 0px rgba(255, 255, 255, 0.1); */
    box-shadow: 0 0px 0px rgba(255, 255, 255, 0.0);
    border: none;
    background: transparent;
    border: 0;
    border-bottom: 1px dashed rgba(255, 255, 255, 0.12);
}
#your_name_button {
    opacity: 0.5;
    margin-left: 10px;
    cursor: pointer;
}
#form_change_name{
    margin-bottom: 15px;
    margin-left: 5px;
}

/*   */
.checkbox{
    display: block;
}
label.checkbox input[type="checkbox"] {display:none;}
label.checkbox span {
  display:inline-block;
  border:1px solid #BBBBBB33;
  border-radius:3px;
  width:20px;
  height:20px;
  background:rgba(19,21,44,0.75);
  vertical-align:middle;
  margin:0px;
  position: relative;
  transition:width 0.1s, height 0.1s, margin 0.1s;
  
}
label.checkbox :checked + span {
  background:rgba(19,21,44,0.75);
  width:20px;
  height:20px;
  margin: 0px;
}
label.checkbox :checked + span:after {
  content: '\2714';
  font-size: 18px;
  position: absolute;
  top: -3px;
  left: 2px;
  color: #99a1a7;

}
/*    */
.menu_select {
    width:284px;
    margin-bottom: 15px;
    color: #ffffff9d;
    box-shadow: 0 0 2px rgba(200,200,200,0.5);
    background-color:#13152c;
}
#worldinfo_select {
    width: 284px;/*width: 15.75em;*/
    display: inline-block;
}
.worldinfo-import {
    display: inline-block;
    padding: 0.5em;
    border: thin solid rgba(200,200,200,0.0);
    border-radius: 3px;
    background-color: #191b3133;
    cursor: pointer;
    margin: 0px;
    
}
#option_toggle_worldinfo {
    margin-left: 4px;
}
#worldinfo-import {
    background-image: url(../img/import.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: 0 10px;
    border: thin solid rgba(200,200,200,0.0);
    
}
#model_novel_select {
    margin-bottom: 16px;
}
#settings_perset {
    margin-bottom: 30px;
}
#anchor_checkbox {
    display: grid;
    grid-template-rows: 30px auto;
    grid-template-columns: 24px auto;
    margin-bottom: 35px;
}
.menu_checkbox h4 {
    margin: 0px;
    padding: 0px;
    margin-left: 5px;
    margin-bottom: 1px;
}

/*Character popup*/
#character_popup {
    grid-template-rows: 50px 100px 100px 40px auto 45px 45px;
}

#character_popup_content {
    margin-left: 36px;
}

#personality_div {
    margin-left: 36px;
    margin-top: 20px;
}
#personality_textarea {
    width: 100%;
    /* height: 65px; */
    margin-top: 0px;
    margin-left: 0px;
}
#scenario_div {
    padding-top: 10px;
    margin-left: 36px;
}
#mes_example_div {
    margin-left: 36px;
    max-height: 100%;
}
#scenario_pole {
    width: 100%;
    margin-left: 0px;
}
#mes_example_textarea{
    height: calc(100% - 17em);
    margin-top: 4px;
}

#system_prompt_textarea, #jailbreak_prompt_textarea, #user_jailbreak_prompt_textarea {
    margin-left: 2px;
    width: 94%;
    height: 180px;
    margin-top: 4px;
    margin-bottom: 16px;
}
#jailbreak_prompt_textarea {
    height: 140px;
}
#user_jailbreak_prompt_textarea {
    height: 60px;
    margin-bottom: 28px;
}

#default_openai_url_button {
    position: absolute;
    display: inline-block;
    cursor: pointer;
    width: 20px;
    height: 20px;
    opacity: 0.35;
    margin-top: 5px;
    margin-left: 7px;
}

#api_url_openai:disabled {
    color: #ffffff66;
}
#character_popup_ok {
    cursor: pointer;
    display: none;/* grid; */
    place-items: center;
    height: 40px;
    margin-top: 15px;
    margin-left: 36px;/* 36px;329px;/ */
    /* margin-right: auto; */
    width: 110px;/* 80px */
    text-align: center;
}


#select_chat_popup {
    display: block;
    grid-template-rows: 50px 100px 100px auto 45px;
    max-width:770px;
    height: 440px;
    position: absolute;
    z-index: 2066;
    background-color: blue;
    margin-left: auto;
    margin-right: auto;
    left: 0;
    right: 0;
    /* text-align: center; */
    margin-top: 21vh;
    box-shadow: 0 0 2px rgba(200,200,200,0.1);
    padding: 4px;
    background: #191b31F0;
    border-radius: 5px;
}
.chat_delete, .chat_export, .chat_name {
    padding: 5px;
    padding-top: 0px;
    padding-bottom: 10px;
}
.chat_export {
    margin-left: 1px;
}
/* Modular window */
.modular {
    z-index: 2065;
}
.modular.through {
    background: none !important;
    height: 0px;
    width: 0px;
}

.modular .container {
    display: block;
    position: fixed;
    z-index: 1989;
    background-color: blue;
    margin-left: auto;
    margin-right: auto;
    min-width: 10%;
    min-height: 15%;
    box-shadow: 0 0 2px rgba(200,200,200,0.3);
    padding: 1.8ex;
    padding-top: 1.25ex;
    background: #191b31F9;
    border-radius: 5px;
}
.snappable {
    transition: all 0.5s;
}
.modular {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: none;
}


.modular .container {
    display: flex;
    flex-direction: column;
}

.modular .header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
    margin-bottom: 1ex;
}
.modular .header .icon {
    pointer-events: none;
    width: 2.3em;
    height: 2.3em;
    margin-right: 0.4ex;
}
.note_icon {
    width: 1.5em !important;
    height: 1.5em !important;
    margin-right: 1ex;
}

.h4_menu_title.person_summary {
    margin-top: 0px !important;
}

.modular .header .cross {
    width: 1.5em;
    height: 1.5em;
    cursor: pointer;
    margin-left: 1ex;
}
.modular .header h3 {
    text-align: left;
    flex-grow: 2;
}
.modular .content {
    flex: 1;
}
.modular .footer {
    margin-top: 1ex;
}

.modular .direction {
    position: absolute;
    width: 2em;
    height: 2em;
    cursor: pointer;
    opacity: 0;
    transition: transform 0.45s;
}
.modular .direction:after {
    opacity: 0.72;
    content: " ";
    position: absolute;
    border: 1em solid white;
}
.modular.selected {
    z-index: 90000;
}
.modular.selected > .container {
    box-shadow: 0 0 2px rgba(200,200,200,0.8);
}
.modular .direction:hover {
    opacity: 1;
    transform: scale(150%);
}

.direction.tl, .direction.tr, .direction.br, .direction.bl {
    transform: scale(45%);
}
.direction.tl:hover, .direction.tr:hover, .direction.br:hover, .direction.bl:hover {
    transform: scale(65%);
}

.direction.tm:after { transform: translateY(-1em); transform: scale(65%);}
.direction.mr:after { transform: translateX(1em); transform: scale(65%);}
.direction.bm:after { transform: translateY(1em); transform: scale(65%);}
.direction.ml:after { transform: translateX(-1em); transform: scale(65%);}

.direction.p-0-0, .direction.tl { left: -1em; top: -1em; cursor: nw-resize; }
.direction.p-1-0, .direction.tm { left: calc(50% - 1em); top: -1.5em; cursor: ns-resize; }
.direction.p-2-0, .direction.tr { right: -1em; top: -1em; cursor: ne-resize; }
.direction.p-2-1, .direction.mr { right: -1.5em; top: calc(50% - 1em); cursor: ew-resize; }
.direction.p-2-2, .direction.br { right: -1em; bottom: -1em; cursor: nw-resize; }
.direction.p-1-2, .direction.bm { left: calc(50% - 1em); bottom: -1.5em; cursor: ns-resize; }
.direction.p-0-2, .direction.bl { left: -1em; bottom: -1em; cursor: ne-resize; }
.direction.p-0-1, .direction.ml { left: -1.5em; top: calc(50% - 1em); cursor: ew-resize; }

.direction.p-0-0:after, .direction.tl:after { border-color: white transparent transparent white; }
.direction.p-1-0:after, .direction.tm:after { border-color: transparent transparent white transparent; }
.direction.p-2-0:after, .direction.tr:after { border-color: white white transparent transparent; }
.direction.p-2-1:after, .direction.mr:after { border-color: transparent transparent transparent white; right: -0.5em;}
.direction.p-2-2:after, .direction.br:after { border-color: transparent white white transparent; }
.direction.p-1-2:after, .direction.bm:after { border-color: white transparent transparent transparent; bottom: -0.5em;}
.direction.p-0-2:after, .direction.bl:after { border-color: transparent transparent white white; }
.direction.p-0-1:after, .direction.ml:after { border-color: transparent white transparent transparent; right: 0.5em;}

.modular .move {
    position: absolute;
    top: 0ex;
    height: 2.7ex;
    left: calc(25% + 1em);
    right: calc(25% + 1em);
    border-radius: 1ex;
    transition: opacity 0.5s;
    background: white;
    opacity: 0;
    cursor: grab;
}
.modular .move:hover {
    opacity: 0.12;
}

/* NOTES WINDOW */
.notes_token_stat {
    display: inline;
    margin-right: auto;
}
.notes_token_stat .h5_menu_help {
    display: inline-block;
}
#notes_popup select {
    margin: 0.5ex 0px;
    width: 100%;
    background-color: rgb(45,46,67);
}

#notes_wpp_label,
#notes_wpp_checkbox {
    float: right;
}

.modular > div {
    padding-top: 0.75ex;
}

label.wpp_label {
    display: inline-block;
    font-size: 75%;
    line-height: 0.8em;
    opacity: 0.75;
    margin-top: 0.5ex;
    text-align: center;
}
.modular label.wpp_label {
    margin-top: 0ex;
}
#notes_enable_label {
    margin-top: 1em !important;
}
#notes_popup option {
    background-color: #13152c;
}

#notes_popup div.wpp-editor,
.modular .wpp-editor-field,
#notes_popup textarea {
    --autoresize: false;
    height: 100%;
    width: 100%;
    resize: none;
    display: inline-block;
    background-color: #13152c;
    outline: none;
    border:0px solid grey;
    box-shadow: 0 0 2px rgba(200,200,200,0.5);
    padding: 10px;
    color: #e6e6e6;
    margin: 0px;
    margin-bottom: 1.0ex;
    white-space: pre-wrap;
    overflow-wrap: break-word;
}

/* WORLD INFO WINDOW */
.world_info {
    min-width: 24em !important;
}
.world_info select {
    float: left;
    display: inline-block;
    margin: 0px;
    padding: 0px;
    width: calc(100% - 8em);
    height: 2em;
    font-size: 100%;
    color: #ffffff9d;
    box-shadow: 0 0 2px rgba(200,200,200,0.0);
    background-color: #13152c55;
    border-bottom: 1px dashed rgba(255, 255, 255, 0.12);
    cursor: pointer;
}
/*.keys-editor, .secondary-keys-editor,*/
.world_info .content,
.modular > div > textarea {
    --autoresize: false;
    height: 100%;
    width: 100%;
    resize: none;
    display: inline-block;
    background-color: #13152c;
    outline: none;
    border:0px solid grey;
    box-shadow: 0 0 2px rgba(200,200,200,0.5);
    padding: 10px;
    color: #e6e6e6;
    white-space: pre-wrap;
    overflow-wrap: break-word;
    overflow: auto;
    display: flex;
    flex-flow: column;
    /*flex-wrap: wrap;*/
}
.world_info .content {
    overflow-x: hidden;
    overflow-y: auto;
    flex-flow: column;
}
.world_info input[type="file"] {
    display: none
}
.world_info label.button {
    height: 1.685em;
    line-height: 1em;
    border: thin solid rgba(200,200,200,0.2);
    border-radius: 3px;
    background-color: #191b3133;
    padding: 0.5ex;
    margin: 2px;
    cursor: pointer;
}
.world_info label.button,
.world_info button.create,
.world_info button.delete {
    float: right;
}
.world_info .row {
    width: 100%;
    display: flex;
    height: 42px;
    border-radius: 0.5ex;
    margin-bottom: 0.5ex;
}
.world_info .row > button {
    min-width: 2em;
}
.world_info .row > .tags {
    flex-grow: 2;
    display: inline-block;
    margin: 0px;
    padding: 0.25ex;
    width: min-content;
    height: 2em;
    font-size: 100%;
    color: #ffffff9d;
    white-space: nowrap;
    overflow-x: hidden;
    text-overflow: ellipsis;
    cursor: pointer;
    line-height: 1.5em;
}
.world_info .row > .tags:hover {
    color: #fff;
}
.world_info .row .tokens {
    position: relative;
    font-size: 1.1em;
    min-width: 1em;
    text-align: center;
}
.world_info .row .tokens:after {
    content: "TOK";
    position: absolute;
    top: 2em;
    left: 0;
    width: 100%;
    height: 1em;
    font-size: 50%;
    text-align: center;
}
.world_info .row.add {
    color: #ffffff9d;
    cursor: pointer;
    text-align: center;
}
.world_info .row.add:hover {
    color: #ffffff;
}
.world_info .row.error {
    background-color: darkred;
}
.world_info_details .wpp-editor-field {
    height: initial;
    margin-bottom: 0px;
    box-shadow: none;
    padding: 0px;
    flex-grow: 1;
}
.world_info_details .content {
    flex-flow: column;
}
.modular .container.world_info_details {
    min-height: 14em;
}
.world_info_details label:not(.wpp_label) {
    vertical-align: super;
}
.keys-editor, .secondary-keys-editor {
    display: block;
    height: 2.5em;
    padding: 1ex 0px;
    text-align: left;
    overflow-y: hidden;
    overflow-x: auto;
    scrollbar-width: thin;
    white-space: nowrap;
    flex-shrink: 0;
}
.secondary-keys-editor {
    font-size: 0.9em;
}
.keys-editor > input, .secondary-keys-editor > input {
    display: inline;
    font-size: 0.92em;
    color: #ccc;
    background-color: transparent;
    height: 1.4em;
    overflow-x: hidden;
    text-overflow: ellipsis;
    margin-bottom: 2px;
    border: 1px solid #ccc;
    border-radius: 1ex;
    margin-right: 1ex;
}

#world_info_settings input {
    display: block;
    background-color: #13152c;
    box-shadow: 0 0 2px rgba(200,200,200,0.5);
    border: 0px solid grey;
    color: #ffffffaa;
    padding: 0.5ex;
    padding-left: 0.5ex;
    margin-left: 3px;
    margin-bottom: 1em;
    width: 284px;
    height: 30px;
    padding-left: 10px;
    margin-right: auto;
}

.keys-editor > input.empty, .secondary-keys-editor > input.empty {
    opacity: 0.5;
}
#kobold_api input[type=number] {
    background-color: #13152c;
    box-shadow: 0 0 2px rgba(200,200,200,0.5);
    border: 0px solid grey;
    color: #ffffffaa;
    padding: 0.5ex;
    margin-left: 3px;
    margin-bottom: 1em;
    width: 284px;
    /*height: 30px;*/
    padding-left: 10px;
}
#kobold_api input[type=number]::-webkit-inner-spin-button {
    opacity: 1;
    color: #ffffffaa;
    padding: 0.5ex;
    background-color: #13152c;
}


    /* CHAT IMPORT */
#chat_import_button {
    margin-top: 15px;
    margin-left: 13px;
    cursor:pointer;
    display: inline-block;
}
#chat_import_button a {
    color: #d5c9be;
}
#chat_import_button a:hover {
    color: #998e6b;
}
#chat_import_button_help {
    display: inline-block; 
    color:#757575;
}
#load_select_chat_div {
    position: absolute;
    bottom: 154px;
    left: 174px;
}
#load_select_chat_div img {
    width: 80px;
    height: 80px;
}
#select_chat_div {
    margin-left: 5px;
    margin-top: 30px;
    scrollbar-width: thin;
    /* width: 900px; */
    /* height: 80%; */
    overflow: hidden;
    overflow-y: scroll;
    max-width:757px;
    height: 350px;
}
#select_chat_div hr {
    background-image: unset;
    border: 1px solid rgba(255, 255, 255, 0.12);
}
.select_chat_block {
    border-radius: 5px;
    margin-right: 10px;
    cursor:pointer;
    display: grid;
    grid-template-columns: 60px auto;
    grid-template-rows: auto auto;
}
.select_chat_block:hover {
    background-color: #ffffff07;
}
.select_chat_block[highlight] {
    background-color: #ffffff09;/* #c2b07a12; */
}

.select_chat_block .avatar {
    grid-row: span 2;
    width: 47px;
    height: 72px;
    border-radius: 7px;
}

.select_chat_block_filename {
    opacity:0.99;
}
.select_chat_block_filename_text {
    opacity:0.5;
    display: inline-block;
}
.select_chat_block_mes {
    margin-right: 6px;
}

#advanced_edit_logo {
    width: 35px;
    height: 35px;
    display: inline-block;
    position: absolute;
    top:19px;
}
#master_settings_logo {
    opacity: 0.95;
    width: 37px;
    height: 37px;
    display: inline-block;
    position: absolute;
    top:18px;
}
.header_popup_text_h3 {
    display: inline-block;
    margin-left: 38px;
}
#master_settings_head .header_popup_text_h3 {
    margin-left: 40px;
}
#export_character_div {
    display: grid;
    grid-template-columns: 340px auto;
}


/*    */


/* HORDE */
#api_button_horde{
    cursor: pointer;
    color:#ffffffaa;
}
#api_loading_horde{
    width: 25px;
    height: 25px;
    display: none;
}
#online_status_text_horde{
    margin-left: 4px;
    display: inline-block;
}
#online_status_horde{
    opacity: 0.5;
    margin-top: 2px;
    margin-bottom: 30px;
}
#online_status_indicator_horde{
    border-radius: 7px;
    width: 14px;
    height: 14px;
    background-color: red;
    display: inline-block;
}

.text_pole_horde{

    border:0px solid grey;
    box-shadow: 0 0 2px rgba(200,200,200,0.5);
    background-color: #13152c;
    /* padding: 10px; */

    padding: 10px;
    color: #ffffffaa;
    font-family: "Source Sans Pro", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
    font-size: 18px;
    size: 10;
    font-size: 11pt;
    padding: 7px;
}
#hordeInfo {
    opacity: 0.3;
    bottom: 0px;
    margin-left: 1ex;
    margin-top: 1ex;
    display: inline-block;
}
#hordeInfo.hidden {
    display: none;
}
#hordeQueue {
    text-align: left;
    margin-left: 1ex;
}

/* Folders */
ul.folders, ul.folders ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

li.folder.hidden, li.folder-content.hidden,
li.folder.opened > .children .children,
li.folder:not(.opened) > .children > li.folder:not(.opened) > div {
    display: none;
}

/* Character screen */
#rm_folder_order {
    float: unset;
    width: 5.75em;
    height: 2em;
    margin-top: 1.3em;
    margin-right: 3%;
    padding: 0.25em;
    margin-bottom: 0;
    text-align: center;
    background-color: rgb(45,46,67);
    display: inline-block; 
    margin: 0px; 
}
.character-screen {
    min-height: 62vh;
}
.character-screen .folder-content, .character-screen .folder {
    padding: 0px;
}

.folder-content {
    cursor: pointer;
}

#room_character_select_items .avatar img, #room_character_selected_items .avatar img {
    cursor: pointer;
}

.character-screen .folder-content > div, .character-screen .folder > div {
    border-radius: 1ex;
}
.character-screen .avatar {
    /*padding: 0ex;*/
    /*margin: 1ex;*/
    /*margin-left: 3px;*/
    /*width: 53px;/*3.75em;*/
    /*height: 77px;/* 5.5em;*/
}
.character-screen .root > div, .character-screen .flat .folder {
    display: none !important;
}

/* folder icon states */
.character-screen .folder > div:first-child > .avatar {
    background-size: cover;
}
.character-screen .folder.opened > div:first-child > .avatar {
    background-image: url("../img/folder_active.png");
}
.character-screen .folder:not(.opened) > div:first-child > .avatar {
    background-image: url("../img/folder.png");
}
.character-screen .folder.empty.opened > div:first-child > .avatar {
    background-image: url("../img/folder_active_empty.png");
}
.character-screen .folder.empty:not(.opened) > div:first-child > .avatar {
    background-image: url("../img/folder_empty.png");
}

/* "main" section of folders/content */
.character-screen .folder-content > div, .character-screen .folder > div {
    display: flex;
    position: relative;
}
.folder .nameTag, .folder-content .nameTag {
    margin-left: 5px;/*0.5ex;*/
    margin-top: 1ex;
    font-weight: bold;
    flex-grow: 2;
}
.folder-content > div:first-child:hover, .character_select > div:first-child:hover {
    background-color: #ffffff11;
}

/* Buttons */
.folder button {
    background: transparent;
    border: none;
    padding: 0;
    margin: 0;
}
.folder .delete, .folder .rename {
    position: absolute;
    top: 0;
    width: 3em;
    height: 3em;
    background-size: 1.5em;
    background-repeat: no-repeat;
    cursor: pointer;
    opacity: 0.3;
    background-position-x: 1em;
    background-position-y: 1ex;
}
.folder .delete:hover, .folder .rename:hover, .select_chat_block .rename:hover {
    opacity: 1;
}
.folder .delete {
    right: 0em;
    background-position-x: 0em;
    background-image: url("../img/del_mes.png");
}
.folder .rename {
    right: 3em;
    background-position-x: 1em;
    background-image: url("../img/quill.png");
}
.select_chat_block .rename {
    background: transparent;
    border: none;
    padding: 0;
    margin: 0;
    background-image: url("../img/quill.png");
    width: 2.5em;
    height: 2.5em;
    background-size: 1.25em;
    background-repeat: no-repeat;
    cursor: pointer;
    opacity: 0.3;
    background-position-x: 0.25em;
    background-position-y: 0.5ex;
}

/* Right nav */

.nav {
    width: 450px;
    min-width: 450px;
    height: 100%;
    position: fixed;
    top: 0;
    bottom: 0;
    margin: 0;
    right: -450px;
    padding: 0px 20px;
    -webkit-transition: right 0.14s ease-in-out  0.02s;
    -moz-transition: right 0.14s ease-in-out  0.02s;
    transition: right 0.14s ease-in-out  0.02s;


    z-index: 2000;
    box-shadow: 0 0 2px rgba(200,200,200,0.1);
    white-space:nowrap;
    background: #191b31f9; /*#191b31A0; */

}



.nav-toggle {
    border-radius: 5px;

    position: absolute;

    right: 450px;

    top: 1em;

    padding: 0.5em;

    background: inherit;

    color: #dadada;

    cursor: pointer;

    font-size: 1.2em;
    line-height: 1;

    z-index: 2001;

    -webkit-transition: color .25s ease-in-out;
    -moz-transition: color .25s ease-in-out;
    transition: color .25s ease-in-out;
}

.grecaptcha-badge { 
    visibility: hidden;
}

.google-captcha-terms {
    font-size: 10px; 
    opacity: 0.8;
    display: none;
}

.nav-toggle:after {
    content: '\2630';
    text-decoration: none;
}



.nav-toggle:hover {
    color: #f4f4f4;
}



[id='nav-toggle'] {
    position: absolute;
    display: none;
}



[id='nav-toggle']:checked ~ .nav > .nav-toggle {
    left: auto;
    right: 2px;
    top: 1em;
}




[id='nav-toggle']:checked ~ .nav {
    right: 0;
    box-shadow:-4px 0px 20px 0px rgba(0,0,0, 0.01);
    -moz-box-shadow:-4px 0px 20px 0px rgba(0,0,0, 0.01);
    -webkit-box-shadow:-4px 0px 20px 0px rgba(0,0,0, 0.01);
    overflow-y: auto;
}




[id='nav-toggle']:checked ~ main > article {
    -webkit-transform: translateX(-450px);
    -moz-transform: translateX(-450px);
    transform: translateX(-450px);
}




[id='nav-toggle']:checked ~ .nav > .nav-toggle:after {
    content: '\2715';
}

@-webkit-keyframes bugfix {
    to {
      padding: 0;
    }
}

@media screen and (min-width: 450px) {
    html,
    body {
      margin: 0;
      overflow-x: hidden;
    }
}

@media screen and (max-width: 450px) {
    html,
    body {
      margin: 0;
      overflow-x: hidden;
    }
    .nav {
      width: 100%;
      min-width: 0px;
      box-shadow: none
    }

    #chara_cloud {
        margin-left: 10px;
        margin-right: 0px;
        width: 100%;
    }

    #characloud_search_form {
        overflow-x: scroll;
    }

    #bg_menu {
        position: relative;
    }

    #logo_block {
        width: 40%;
    }

    #api_button {
        margin-top: 5px;
        display: block;
    }

    #master_settings_popup {
        height: 95vh;
    }

    #master_settings_koboldai_block {
        display: flex;
        flex-direction: column;
    }

    #master_settings_novelai_block {
        display: flex;
        flex-direction: column;
    }

    #master_settings_openai_block .master_settings_range_block {
        display: flex;
        flex-direction: column;
    }

    #master_settings_toggle_block {
        display: flex;
        flex-direction: column;
    }

    .mes {
        margin-bottom: 5px;;
    }

    .style_button {
        width: 30px;
        height: 30px;
    }

    .style_button img {
        width: 100%;
        height: 100%;
    }
}

/* Story */
#story {
    display: none;
}

#chat_story_button {

    cursor: pointer;
    position: absolute;
    right: 20px;
    font-weight: 700;
    font-size: 11pt;
    opacity: 0.72;
}
#chat_story_button_story_text {
    opacity: 0.5;
}


#story_textarea {
    height: 99%;
    scrollbar-width: thin;
    padding-left: 18px;
    font-size: 13.5pt;
    background: #191b31A0;
}

#story_textarea .highlight {
  background-color: yellow;
}
/*
#ai_image_input{
    position: absolute;
    margin-top: 35px;
}
*/
#ai_image_picker{
    position: absolute;
    margin-top: 35px;
    margin-left: 6px;
    opacity: 0.9;
    display: none;
}
#ai-select-image, #ai-image-selected {
  width: 28px;
  height: 28px;
  cursor: pointer; 
}

#ai-image-selected {
  position: relative;
}

#ai-image-selected::after {
  content: '';
  position: absolute;
  right: -5px;
  top: -5px;
  width: 15px;
  height: 15px;
  border-radius: 50%;
  border: 2px solid green;
}

.message_image_recognition_cross {
    height: 18px !important;
    width: 18px !important;
    position: absolute;
    float: right;
    right: 3px;
    top: 3px;
    cursor: pointer;
    opacity: 0.5;
    background-color: black;
    border-radius: 1px !important;
    padding: 1px;
}